Skip to content

Implement CxAssist UI with Gutter Icons, Quick Fixes, and Copilot Integration (AST-107884)#306

Open
cx-rahul-pidde wants to merge 58 commits intofeature/devassist-integration-branchfrom
feature/AST-107884-all-poc
Open

Implement CxAssist UI with Gutter Icons, Quick Fixes, and Copilot Integration (AST-107884)#306
cx-rahul-pidde wants to merge 58 commits intofeature/devassist-integration-branchfrom
feature/AST-107884-all-poc

Conversation

@cx-rahul-pidde
Copy link
Copy Markdown
Contributor

@cx-rahul-pidde cx-rahul-pidde commented Mar 6, 2026

Description

Implements CxAssist feature for Visual Studio extension - a unified security findings interface with gutter icons, hover tooltips, Quick Fix actions, and GitHub Copilot Chat integration for AI-powered remediation.

What's Changed

Core Components

  • CopilotIntegration.cs: Copilot Chat orchestration with UI Automation-based Agent mode switching
  • CxAssistCopilotActions.cs: High-level entry points for SendFixWithAssist() and SendViewDetails()
  • CxAssistDisplayCoordinator.cs: Central coordinator for findings state and UI updates
  • Markers & Decorations: Gutter icons, error underlines, Quick Info tooltips, Quick Fix actions
  • FindingsWindow: New panel for browsing findings with filtering and sorting
  • Prompts System: Scanner-specific fix and explanation prompts (OSS, Secrets, IaC, ASCA, Containers)

Features

✅ Gutter icons (severity-colored, theme-aware)
✅ Error underlines for problematic severities
✅ Hover tooltips with "Fix with Checkmarx One Assist" and "View details" links
✅ Quick Fix actions (Ctrl+.)
✅ Findings Window panel with filters and navigation
✅ Copilot Chat integration with Agent mode switching
✅ Related vulnerability grouping (by package for OSS, by line for IaC/ASCA)
✅ Error List synchronization
✅ Dark and light theme support with dynamic reloading
✅ Non-blocking async automation via DispatcherTimer
✅ State machine to prevent overlapping operations

Related Issues or Epic

AST-107884

cx-rahul-pidde and others added 23 commits March 10, 2026 10:59
Added IsAgentModeAlreadyActive() method that checks if Agent mode is
already active by examining the Mode Picker button's display name. If
Agent mode is already active, TrySwitchToAgentMode() returns early to
avoid unnecessary re-switching.

This fixes the issue where Agent mode selection would fail on the second
attempt - the mode was already active from the first call, but the code
tried to switch again, causing the dropdown to not open properly.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@cx-rahul-pidde cx-rahul-pidde changed the title Feature/ast 107884 all poc Implement CxAssist UI with Gutter Icons, Quick Fixes, and Copilot Integration (AST-107884) Mar 18, 2026
cx-rahul-pidde added a commit that referenced this pull request Apr 2, 2026
- Deleted all 6 UIManager classes (Asca, Secrets, Iac, Containers, Oss, Base)
- Simplified BaseRealtimeScannerService to only handle scan triggering (debounce + DTE)
- Removed UIManager instantiation and calls
- Updated services with TODO markers for Vulnerability mapping + coordinator integration
- All UI display (markers, error list, hover, lightbulb) now handled by CxAssistDisplayCoordinator

This aligns with PR #306's unified UI coordination approach - a single coordinator
handles all visual decorations across all scanners instead of per-scanner UIManagers.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant